Docs/npillardou/thermo poromechanics tutorial - #4110
Open
npillardou wants to merge 9 commits into
Open
Conversation
Allow to query statistics computation for solver (for reservoir reference pressure for wells), without needing an output statistics component. Statistics are no longer recomputed for each convergence step but only at iteration start.
- `RegionStatistics` classes for resulting data storages at different levels:
- sub-regions mpi-local kernel compute read-backs,
- (cell element) regions,
- solver discretisation `MeshLevel`,
- `StatsAggregator` classes to compute & reduce the statistics to rank 0,
- `StatsTask` `Group`, the user component to schedule flow statistics computation & output to log & CSV.
This wommit introduces: - An improved well schema layout and code refactor better suited for well modeling. The previous implementation primarily targeted Jacobian generation requirements for the coupled reservoir and well system. - The well estimator is used to select the active well constraint by solving the well system assuming fixed reservoir conditions and selecting the constraint with the highest or lowest well flowing pressure. the estimator is applied at beginning of Jacobian assembly of the coupled system frequency determined via input setting estimator is a data member of WellControl and a tailed version of PhysicsSolver for wells logic underpins future capability to replace the segmented well model with other formulations. This is a breaking change, detailed migration instructions and migration script are posted at #4081
some changes that were needed to succesfully compile and pass unit tests in our environment (AOCC Compiler, AOCL). 1. Variable shadowing solved, 2. testSinglePhaseMFDPolyhedral failed intermittently during mesh initialization, crash solved by disabled FPE trapping.
Solved a bug where a shut well following a non-converged open well reset the max well residual to zero, letting the simulation falsely converge. Affected compositional models only (well segment flow residuals).
Fix a bug breaking determinism in numerical Jacobian tests, where iterate-dependent constitutive state persisted across Newton attempts. Update CompositionalMultiphaseBase::resetStateToBeginningOfStep to explicitly discard warm-started state held by the fluid model by calling fluid.initializeState(). This guarantees that rolled-back steps start clean and do not inherit iterate-dependent state from failed Newton attempts.
npillardou
requested review from
MelReyCG,
OmarDuran,
bd713,
castelletto1,
corbett5,
dkachuma,
frankfeifan,
herve-gross,
jafranc,
jhuang2601,
joshua-white,
rrsettgast,
tjb-ltk,
victorapm and
wrtobin
as code owners
August 7, 2026 09:15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR updates the script to generate documentation figures by computing directly the analytical solutions without need of csv files.
This branch is based on Frank Feifan's branch which includes the thermal stress contribution directly in the total stress calculation.
A stress figure has been added to see the difference between Frank Feifan's branch and develop :